package xin.data
{
	/**
	 * Json数据 赋值与获取类
	 * @author xin
	 * 
	 */	
	public class JsonSave
	{
		// 原生数据字典(储存未进行赋值处理的 key:value);
		private var _source:ObjectBase;
		
		public function JsonSave()
		{
			this._source = new ObjectBase();
		}
		
		/**
		 * 添加数据
		 * @param key 路径键值
		 * @param obj 数据
		 */		
		public function addData(key:String, jsonSource:String):void
		{
			// 删除键值操作
			if (jsonSource == null)
			{
				delete this._source[key];
				return;
			}
			
			// 更新键值操作
			this._source.forEach(function(sourceKey:String, sourceObj:Object):void
			{
				if (sourceKey.indexOf(key) > -1)
				{
					delete _source[sourceKey];
				}
			});
			this._source[key] = jsonSource;
		}
		
		/**
		 * 获取数据
		 * @param key 路径键值
		 * @param dataType 数据类型  0:Object; 1:Array; 2:String; 3:int
		 */		
		public function getValue(key:String, dataType:int = 0):*
		{
			return null;
		}
	}
}